testlevelbar: don't segfault when quitting testlevelbar
authorCosimo Cecchi <cosimoc@gnome.org>
Fri, 24 Oct 2014 21:53:26 +0000 (14:53 -0700)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 27 Oct 2014 10:56:19 +0000 (06:56 -0400)
Quit the mainloop when the window is closed.

https://bugzilla.gnome.org/show_bug.cgi?id=707695

tests/testlevelbar.c

index 51b4af680b32d333954e6d01ec97293fd7d8bc96..41dce8bedfbade5b125f35fe2212a97eab942bb4 100644 (file)
@@ -55,6 +55,15 @@ increase_level (gpointer data)
   return G_SOURCE_CONTINUE;
 }
 
+static gboolean
+window_delete_event (GtkWidget *widget,
+                     GdkEvent *event,
+                     gpointer _data)
+{
+  gtk_main_quit ();
+  return FALSE;
+}
+
 int
 main (int argc, char *argv[])
 {
@@ -72,6 +81,9 @@ main (int argc, char *argv[])
   gtk_container_add (GTK_CONTAINER (window), bar);
   gtk_widget_show_all (window);
 
+  g_signal_connect (window, "delete-event",
+                    G_CALLBACK (window_delete_event), NULL);
+
   g_timeout_add (100, increase_level, bar);
   gtk_main ();